<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title>Python: module mpyc.finfields</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head><body bgcolor="#f0f0f8">

<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="heading">
<tr bgcolor="#7799ee">
<td valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial">&nbsp;<br><big><big><strong><a href="mpyc.html"><font color="#ffffff">mpyc</font></a>.finfields</strong></big></big></font></td
><td align=right valign=bottom
><font color="#ffffff" face="helvetica, arial"><a href=".">index</a><br><a href="https://github.com/lschoe/mpyc/blob/v0.6/mpyc/finfields.py">github.com/lschoe/mpyc/blob/v0.6/mpyc/finfields.py</a></font></td></tr></table>
    <p><tt>This&nbsp;module&nbsp;supports&nbsp;finite&nbsp;(Galois)&nbsp;fields.<br>
&nbsp;<br>
Function&nbsp;GF&nbsp;creates&nbsp;types&nbsp;implementing&nbsp;finite&nbsp;fields.<br>
Instantiate&nbsp;an&nbsp;<a href="https://docs.python.org/3/library/functions.html#object">object</a>&nbsp;from&nbsp;a&nbsp;field&nbsp;and&nbsp;subsequently&nbsp;apply&nbsp;overloaded<br>
operators&nbsp;such&nbsp;as&nbsp;+,-,*,/&nbsp;etc.,&nbsp;to&nbsp;compute&nbsp;with&nbsp;field&nbsp;elements.<br>
In-place&nbsp;versions&nbsp;of&nbsp;the&nbsp;field&nbsp;operators&nbsp;are&nbsp;also&nbsp;provided.<br>
Taking&nbsp;square&nbsp;roots&nbsp;and&nbsp;quadratic&nbsp;residuosity&nbsp;tests&nbsp;supported&nbsp;as&nbsp;well.</tt></p>
<p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#aa55cc">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Modules</strong></big></font></td></tr>
    
<tr><td bgcolor="#aa55cc"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><table width="100%" summary="list"><tr><td width="25%" valign=top><a href="https://docs.python.org/3/library/functools.html">functools</a><br>
</td><td width="25%" valign=top><a href="mpyc.gfpx.html">mpyc.gfpx</a><br>
</td><td width="25%" valign=top><a href="mpyc.gmpy.html">mpyc.gmpy</a><br>
</td><td width="25%" valign=top></td></tr></table></td></tr></table><p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ee77aa">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Classes</strong></big></font></td></tr>
    
<tr><td bgcolor="#ee77aa"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><dl>
<dt><font face="helvetica, arial"><a href="https://docs.python.org/3/library/functions.html#object">builtins.object</a>
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="mpyc.finfields.html#ExtensionFieldElement">ExtensionFieldElement</a>
</font></dt><dd>
<dl>
<dt><font face="helvetica, arial"><a href="mpyc.finfields.html#BinaryFieldElement">BinaryFieldElement</a>
</font></dt></dl>
</dd>
<dt><font face="helvetica, arial"><a href="mpyc.finfields.html#PrimeFieldElement">PrimeFieldElement</a>
</font></dt></dl>
</dd>
</dl>
</dd>
</dl>
 <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="BinaryFieldElement">class <strong>BinaryFieldElement</strong></a>(<a href="mpyc.finfields.html#ExtensionFieldElement">ExtensionFieldElement</a>)</font></td></tr>
    
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt><a href="#BinaryFieldElement">BinaryFieldElement</a>(value)<br>
&nbsp;<br>
Common&nbsp;base&nbsp;class&nbsp;for&nbsp;binary&nbsp;field&nbsp;elements.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="mpyc.finfields.html#BinaryFieldElement">BinaryFieldElement</a></dd>
<dd><a href="mpyc.finfields.html#ExtensionFieldElement">ExtensionFieldElement</a></dd>
<dd><a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a></dd>
<dd><a href="https://docs.python.org/3/library/functions.html#object">builtins.object</a></dd>
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name="BinaryFieldElement-is_sqr"><strong>is_sqr</strong></a>(self)</dt><dd><tt>Test&nbsp;for&nbsp;quadratic&nbsp;residuosity&nbsp;(0&nbsp;is&nbsp;also&nbsp;square).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-sqrt"><strong>sqrt</strong></a>(self, INV=False)</dt><dd><tt>Modular&nbsp;(inverse)&nbsp;square&nbsp;roots.</tt></dd></dl>

<hr>
Data and other attributes defined here:<br>
<dl><dt><strong>characteristic</strong> = 2</dl>

<dl><dt><strong>mix_types</strong> = (&lt;class 'int'&gt;, &lt;class 'mpyc.gfpx.BinaryPolynomial'&gt;)</dl>

<hr>
Methods inherited from <a href="mpyc.finfields.html#ExtensionFieldElement">ExtensionFieldElement</a>:<br>
<dl><dt><a name="BinaryFieldElement-__eq__"><strong>__eq__</strong></a>(self, other)</dt><dd><tt>Equality&nbsp;test.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__int__"><strong>__int__</strong></a>(self)</dt><dd><tt>Extract&nbsp;field&nbsp;element&nbsp;as&nbsp;an&nbsp;integer&nbsp;value.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__irshift__"><strong>__irshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__pow__"><strong>__pow__</strong></a>(self, other)</dt></dl>

<dl><dt><a name="BinaryFieldElement-__repr__"><strong>__repr__</strong></a>(self)</dt><dd><tt>Return&nbsp;repr(self).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__rshift__"><strong>__rshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-reciprocal"><strong>reciprocal</strong></a>(self)</dt><dd><tt>Multiplicative&nbsp;inverse.</tt></dd></dl>

<hr>
Data and other attributes inherited from <a href="mpyc.finfields.html#ExtensionFieldElement">ExtensionFieldElement</a>:<br>
<dl><dt><strong>__hash__</strong> = None</dl>

<dl><dt><strong>least_qnr</strong> = None</dl>

<hr>
Methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="BinaryFieldElement-__add__"><strong>__add__</strong></a>(self, other)</dt><dd><tt>Addition.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__bool__"><strong>__bool__</strong></a>(self)</dt><dd><tt>Truth&nbsp;value&nbsp;testing.<br>
&nbsp;<br>
Return&nbsp;False&nbsp;if&nbsp;this&nbsp;field&nbsp;element&nbsp;is&nbsp;zero,&nbsp;True&nbsp;otherwise.<br>
Field&nbsp;elements&nbsp;can&nbsp;thus&nbsp;be&nbsp;used&nbsp;directly&nbsp;in&nbsp;Boolean&nbsp;formulas.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__iadd__"><strong>__iadd__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;addition.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__ilshift__"><strong>__ilshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__imul__"><strong>__imul__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;multiplication.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__init__"><strong>__init__</strong></a>(self, value)</dt><dd><tt>Initialize&nbsp;self.&nbsp;&nbsp;See&nbsp;help(type(self))&nbsp;for&nbsp;accurate&nbsp;signature.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__isub__"><strong>__isub__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;subtraction.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__itruediv__"><strong>__itruediv__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;division.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__lshift__"><strong>__lshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__mul__"><strong>__mul__</strong></a>(self, other)</dt><dd><tt>Multiplication.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__neg__"><strong>__neg__</strong></a>(self)</dt><dd><tt>Negation.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__pos__"><strong>__pos__</strong></a>(self)</dt><dd><tt>Unary&nbsp;+.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__radd__"><strong>__radd__</strong></a>(self, other)</dt><dd><tt>Addition&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__rlshift__"><strong>__rlshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__rmul__"><strong>__rmul__</strong></a>(self, other)</dt><dd><tt>Multiplication&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__rrshift__"><strong>__rrshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__rsub__"><strong>__rsub__</strong></a>(self, other)</dt><dd><tt>Subtraction&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__rtruediv__"><strong>__rtruediv__</strong></a>(self, other)</dt><dd><tt>Division&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__sub__"><strong>__sub__</strong></a>(self, other)</dt><dd><tt>Subtraction.</tt></dd></dl>

<dl><dt><a name="BinaryFieldElement-__truediv__"><strong>__truediv__</strong></a>(self, other)</dt><dd><tt>Division.</tt></dd></dl>

<hr>
Class methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="BinaryFieldElement-to_bytes"><strong>to_bytes</strong></a>(x)<font color="#909090"><font face="helvetica, arial"> from <a href="https://docs.python.org/3/library/functions.html#type">builtins.type</a></font></font></dt><dd><tt>Return&nbsp;byte&nbsp;string&nbsp;representing&nbsp;the&nbsp;given&nbsp;list&nbsp;of&nbsp;integers&nbsp;x.</tt></dd></dl>

<hr>
Static methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="BinaryFieldElement-from_bytes"><strong>from_bytes</strong></a>(data)</dt><dd><tt>Return&nbsp;the&nbsp;list&nbsp;of&nbsp;integers&nbsp;represented&nbsp;by&nbsp;the&nbsp;given&nbsp;byte&nbsp;string.</tt></dd></dl>

<hr>
Data descriptors inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><strong>value</strong></dt>
</dl>
<hr>
Data and other attributes inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><strong>byte_length</strong> = None</dl>

<dl><dt><strong>ext_deg</strong> = None</dl>

<dl><dt><strong>frac_length</strong> = 0</dl>

<dl><dt><strong>is_signed</strong> = None</dl>

<dl><dt><strong>modulus</strong> = None</dl>

<dl><dt><strong>order</strong> = None</dl>

</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="ExtensionFieldElement">class <strong>ExtensionFieldElement</strong></a>(<a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>)</font></td></tr>
    
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt><a href="#ExtensionFieldElement">ExtensionFieldElement</a>(value)<br>
&nbsp;<br>
Common&nbsp;base&nbsp;class&nbsp;for&nbsp;extension&nbsp;field&nbsp;elements.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="mpyc.finfields.html#ExtensionFieldElement">ExtensionFieldElement</a></dd>
<dd><a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a></dd>
<dd><a href="https://docs.python.org/3/library/functions.html#object">builtins.object</a></dd>
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name="ExtensionFieldElement-__eq__"><strong>__eq__</strong></a>(self, other)</dt><dd><tt>Equality&nbsp;test.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__int__"><strong>__int__</strong></a>(self)</dt><dd><tt>Extract&nbsp;field&nbsp;element&nbsp;as&nbsp;an&nbsp;integer&nbsp;value.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__irshift__"><strong>__irshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__pow__"><strong>__pow__</strong></a>(self, other)</dt></dl>

<dl><dt><a name="ExtensionFieldElement-__repr__"><strong>__repr__</strong></a>(self)</dt><dd><tt>Return&nbsp;repr(self).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__rshift__"><strong>__rshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-is_sqr"><strong>is_sqr</strong></a>(self)</dt><dd><tt>Test&nbsp;for&nbsp;quadratic&nbsp;residuosity&nbsp;(0&nbsp;is&nbsp;also&nbsp;square).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-reciprocal"><strong>reciprocal</strong></a>(self)</dt><dd><tt>Multiplicative&nbsp;inverse.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-sqrt"><strong>sqrt</strong></a>(self, INV=False)</dt><dd><tt>Modular&nbsp;(inverse)&nbsp;square&nbsp;roots.</tt></dd></dl>

<hr>
Data and other attributes defined here:<br>
<dl><dt><strong>__hash__</strong> = None</dl>

<dl><dt><strong>least_qnr</strong> = None</dl>

<dl><dt><strong>mix_types</strong> = (&lt;class 'int'&gt;, &lt;class 'mpyc.gfpx.Polynomial'&gt;)</dl>

<hr>
Methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="ExtensionFieldElement-__add__"><strong>__add__</strong></a>(self, other)</dt><dd><tt>Addition.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__bool__"><strong>__bool__</strong></a>(self)</dt><dd><tt>Truth&nbsp;value&nbsp;testing.<br>
&nbsp;<br>
Return&nbsp;False&nbsp;if&nbsp;this&nbsp;field&nbsp;element&nbsp;is&nbsp;zero,&nbsp;True&nbsp;otherwise.<br>
Field&nbsp;elements&nbsp;can&nbsp;thus&nbsp;be&nbsp;used&nbsp;directly&nbsp;in&nbsp;Boolean&nbsp;formulas.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__iadd__"><strong>__iadd__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;addition.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__ilshift__"><strong>__ilshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__imul__"><strong>__imul__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;multiplication.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__init__"><strong>__init__</strong></a>(self, value)</dt><dd><tt>Initialize&nbsp;self.&nbsp;&nbsp;See&nbsp;help(type(self))&nbsp;for&nbsp;accurate&nbsp;signature.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__isub__"><strong>__isub__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;subtraction.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__itruediv__"><strong>__itruediv__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;division.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__lshift__"><strong>__lshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__mul__"><strong>__mul__</strong></a>(self, other)</dt><dd><tt>Multiplication.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__neg__"><strong>__neg__</strong></a>(self)</dt><dd><tt>Negation.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__pos__"><strong>__pos__</strong></a>(self)</dt><dd><tt>Unary&nbsp;+.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__radd__"><strong>__radd__</strong></a>(self, other)</dt><dd><tt>Addition&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__rlshift__"><strong>__rlshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__rmul__"><strong>__rmul__</strong></a>(self, other)</dt><dd><tt>Multiplication&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__rrshift__"><strong>__rrshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__rsub__"><strong>__rsub__</strong></a>(self, other)</dt><dd><tt>Subtraction&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__rtruediv__"><strong>__rtruediv__</strong></a>(self, other)</dt><dd><tt>Division&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__sub__"><strong>__sub__</strong></a>(self, other)</dt><dd><tt>Subtraction.</tt></dd></dl>

<dl><dt><a name="ExtensionFieldElement-__truediv__"><strong>__truediv__</strong></a>(self, other)</dt><dd><tt>Division.</tt></dd></dl>

<hr>
Class methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="ExtensionFieldElement-to_bytes"><strong>to_bytes</strong></a>(x)<font color="#909090"><font face="helvetica, arial"> from <a href="https://docs.python.org/3/library/functions.html#type">builtins.type</a></font></font></dt><dd><tt>Return&nbsp;byte&nbsp;string&nbsp;representing&nbsp;the&nbsp;given&nbsp;list&nbsp;of&nbsp;integers&nbsp;x.</tt></dd></dl>

<hr>
Static methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="ExtensionFieldElement-from_bytes"><strong>from_bytes</strong></a>(data)</dt><dd><tt>Return&nbsp;the&nbsp;list&nbsp;of&nbsp;integers&nbsp;represented&nbsp;by&nbsp;the&nbsp;given&nbsp;byte&nbsp;string.</tt></dd></dl>

<hr>
Data descriptors inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><strong>value</strong></dt>
</dl>
<hr>
Data and other attributes inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><strong>byte_length</strong> = None</dl>

<dl><dt><strong>characteristic</strong> = None</dl>

<dl><dt><strong>ext_deg</strong> = None</dl>

<dl><dt><strong>frac_length</strong> = 0</dl>

<dl><dt><strong>is_signed</strong> = None</dl>

<dl><dt><strong>modulus</strong> = None</dl>

<dl><dt><strong>order</strong> = None</dl>

</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="FiniteFieldElement">class <strong>FiniteFieldElement</strong></a>(<a href="https://docs.python.org/3/library/functions.html#object">builtins.object</a>)</font></td></tr>
    
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt><a href="#FiniteFieldElement">FiniteFieldElement</a>(value)<br>
&nbsp;<br>
Abstract&nbsp;base&nbsp;class&nbsp;for&nbsp;finite&nbsp;field&nbsp;elements.<br>
&nbsp;<br>
Invariant:&nbsp;attribute&nbsp;'value'&nbsp;nonnegative&nbsp;and&nbsp;below&nbsp;modulus.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%">Methods defined here:<br>
<dl><dt><a name="FiniteFieldElement-__add__"><strong>__add__</strong></a>(self, other)</dt><dd><tt>Addition.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__bool__"><strong>__bool__</strong></a>(self)</dt><dd><tt>Truth&nbsp;value&nbsp;testing.<br>
&nbsp;<br>
Return&nbsp;False&nbsp;if&nbsp;this&nbsp;field&nbsp;element&nbsp;is&nbsp;zero,&nbsp;True&nbsp;otherwise.<br>
Field&nbsp;elements&nbsp;can&nbsp;thus&nbsp;be&nbsp;used&nbsp;directly&nbsp;in&nbsp;Boolean&nbsp;formulas.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__iadd__"><strong>__iadd__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;addition.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__ilshift__"><strong>__ilshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__imul__"><strong>__imul__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;multiplication.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__init__"><strong>__init__</strong></a>(self, value)</dt><dd><tt>Initialize&nbsp;self.&nbsp;&nbsp;See&nbsp;help(type(self))&nbsp;for&nbsp;accurate&nbsp;signature.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__int__"><strong>__int__</strong></a>(self)</dt><dd><tt>Extract&nbsp;field&nbsp;element&nbsp;as&nbsp;an&nbsp;integer&nbsp;value.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__irshift__"><strong>__irshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__isub__"><strong>__isub__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;subtraction.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__itruediv__"><strong>__itruediv__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;division.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__lshift__"><strong>__lshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__mul__"><strong>__mul__</strong></a>(self, other)</dt><dd><tt>Multiplication.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__neg__"><strong>__neg__</strong></a>(self)</dt><dd><tt>Negation.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__pos__"><strong>__pos__</strong></a>(self)</dt><dd><tt>Unary&nbsp;+.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__radd__"><strong>__radd__</strong></a>(self, other)</dt><dd><tt>Addition&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__rlshift__"><strong>__rlshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__rmul__"><strong>__rmul__</strong></a>(self, other)</dt><dd><tt>Multiplication&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__rrshift__"><strong>__rrshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__rshift__"><strong>__rshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__rsub__"><strong>__rsub__</strong></a>(self, other)</dt><dd><tt>Subtraction&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__rtruediv__"><strong>__rtruediv__</strong></a>(self, other)</dt><dd><tt>Division&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__sub__"><strong>__sub__</strong></a>(self, other)</dt><dd><tt>Subtraction.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-__truediv__"><strong>__truediv__</strong></a>(self, other)</dt><dd><tt>Division.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-is_sqr"><strong>is_sqr</strong></a>(self)</dt><dd><tt>Test&nbsp;for&nbsp;quadratic&nbsp;residuosity&nbsp;(0&nbsp;is&nbsp;also&nbsp;square).</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-reciprocal"><strong>reciprocal</strong></a>(self)</dt><dd><tt>Multiplicative&nbsp;inverse.</tt></dd></dl>

<dl><dt><a name="FiniteFieldElement-sqrt"><strong>sqrt</strong></a>(self, INV=False)</dt><dd><tt>Modular&nbsp;(inverse)&nbsp;square&nbsp;roots.</tt></dd></dl>

<hr>
Class methods defined here:<br>
<dl><dt><a name="FiniteFieldElement-to_bytes"><strong>to_bytes</strong></a>(x)<font color="#909090"><font face="helvetica, arial"> from <a href="https://docs.python.org/3/library/functions.html#type">builtins.type</a></font></font></dt><dd><tt>Return&nbsp;byte&nbsp;string&nbsp;representing&nbsp;the&nbsp;given&nbsp;list&nbsp;of&nbsp;integers&nbsp;x.</tt></dd></dl>

<hr>
Static methods defined here:<br>
<dl><dt><a name="FiniteFieldElement-from_bytes"><strong>from_bytes</strong></a>(data)</dt><dd><tt>Return&nbsp;the&nbsp;list&nbsp;of&nbsp;integers&nbsp;represented&nbsp;by&nbsp;the&nbsp;given&nbsp;byte&nbsp;string.</tt></dd></dl>

<hr>
Data descriptors defined here:<br>
<dl><dt><strong>value</strong></dt>
</dl>
<hr>
Data and other attributes defined here:<br>
<dl><dt><strong>byte_length</strong> = None</dl>

<dl><dt><strong>characteristic</strong> = None</dl>

<dl><dt><strong>ext_deg</strong> = None</dl>

<dl><dt><strong>frac_length</strong> = 0</dl>

<dl><dt><strong>is_signed</strong> = None</dl>

<dl><dt><strong>mix_types</strong> = None</dl>

<dl><dt><strong>modulus</strong> = None</dl>

<dl><dt><strong>order</strong> = None</dl>

</td></tr></table> <p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#ffc8d8">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#000000" face="helvetica, arial"><a name="PrimeFieldElement">class <strong>PrimeFieldElement</strong></a>(<a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>)</font></td></tr>
    
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
<td colspan=2><tt><a href="#PrimeFieldElement">PrimeFieldElement</a>(value)<br>
&nbsp;<br>
Common&nbsp;base&nbsp;class&nbsp;for&nbsp;prime&nbsp;field&nbsp;elements.<br>&nbsp;</tt></td></tr>
<tr><td>&nbsp;</td>
<td width="100%"><dl><dt>Method resolution order:</dt>
<dd><a href="mpyc.finfields.html#PrimeFieldElement">PrimeFieldElement</a></dd>
<dd><a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a></dd>
<dd><a href="https://docs.python.org/3/library/functions.html#object">builtins.object</a></dd>
</dl>
<hr>
Methods defined here:<br>
<dl><dt><a name="PrimeFieldElement-__abs__"><strong>__abs__</strong></a>(self)</dt><dd><tt>Absolute&nbsp;value&nbsp;of&nbsp;(signed)&nbsp;value.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__eq__"><strong>__eq__</strong></a>(self, other)</dt><dd><tt>Equality&nbsp;test.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__float__"><strong>__float__</strong></a>(self)</dt><dd><tt>Extract&nbsp;field&nbsp;element&nbsp;as&nbsp;a&nbsp;(signed)&nbsp;float&nbsp;value.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__int__"><strong>__int__</strong></a>(self)</dt><dd><tt>Extract&nbsp;field&nbsp;element&nbsp;as&nbsp;a&nbsp;(signed)&nbsp;integer&nbsp;value.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__irshift__"><strong>__irshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__pow__"><strong>__pow__</strong></a>(self, other)</dt><dd><tt>Exponentiation.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__repr__"><strong>__repr__</strong></a>(self)</dt><dd><tt>Return&nbsp;repr(self).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__rshift__"><strong>__rshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-is_sqr"><strong>is_sqr</strong></a>(self)</dt><dd><tt>Test&nbsp;for&nbsp;quadratic&nbsp;residuosity&nbsp;(0&nbsp;is&nbsp;also&nbsp;square).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-reciprocal"><strong>reciprocal</strong></a>(self)</dt><dd><tt>Multiplicative&nbsp;inverse.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-signed"><strong>signed</strong></a>(self)</dt><dd><tt>Return&nbsp;signed&nbsp;integer&nbsp;representation,&nbsp;symmetric&nbsp;around&nbsp;zero.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-sqrt"><strong>sqrt</strong></a>(self, INV=False)</dt><dd><tt>Modular&nbsp;(inverse)&nbsp;square&nbsp;roots.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-unsigned"><strong>unsigned</strong></a>(self)</dt><dd><tt>Return&nbsp;unsigned&nbsp;integer&nbsp;representation.</tt></dd></dl>

<hr>
Data and other attributes defined here:<br>
<dl><dt><strong>__hash__</strong> = None</dl>

<dl><dt><strong>is_signed</strong> = None</dl>

<dl><dt><strong>mix_types</strong> = &lt;class 'int'&gt;<dd><tt>int([x])&nbsp;-&gt;&nbsp;integer<br>
int(x,&nbsp;base=10)&nbsp;-&gt;&nbsp;integer<br>
&nbsp;<br>
Convert&nbsp;a&nbsp;number&nbsp;or&nbsp;string&nbsp;to&nbsp;an&nbsp;integer,&nbsp;or&nbsp;return&nbsp;0&nbsp;if&nbsp;no&nbsp;arguments<br>
are&nbsp;given.&nbsp;&nbsp;If&nbsp;x&nbsp;is&nbsp;a&nbsp;number,&nbsp;return&nbsp;x.<a href="#PrimeFieldElement-__int__">__int__</a>().&nbsp;&nbsp;For&nbsp;floating&nbsp;point<br>
numbers,&nbsp;this&nbsp;truncates&nbsp;towards&nbsp;zero.<br>
&nbsp;<br>
If&nbsp;x&nbsp;is&nbsp;not&nbsp;a&nbsp;number&nbsp;or&nbsp;if&nbsp;base&nbsp;is&nbsp;given,&nbsp;then&nbsp;x&nbsp;must&nbsp;be&nbsp;a&nbsp;string,<br>
bytes,&nbsp;or&nbsp;bytearray&nbsp;instance&nbsp;representing&nbsp;an&nbsp;integer&nbsp;literal&nbsp;in&nbsp;the<br>
given&nbsp;base.&nbsp;&nbsp;The&nbsp;literal&nbsp;can&nbsp;be&nbsp;preceded&nbsp;by&nbsp;'+'&nbsp;or&nbsp;'-'&nbsp;and&nbsp;be&nbsp;surrounded<br>
by&nbsp;whitespace.&nbsp;&nbsp;The&nbsp;base&nbsp;defaults&nbsp;to&nbsp;10.&nbsp;&nbsp;Valid&nbsp;bases&nbsp;are&nbsp;0&nbsp;and&nbsp;2-36.<br>
Base&nbsp;0&nbsp;means&nbsp;to&nbsp;interpret&nbsp;the&nbsp;base&nbsp;from&nbsp;the&nbsp;string&nbsp;as&nbsp;an&nbsp;integer&nbsp;literal.<br>
&gt;&gt;&gt;&nbsp;int('0b100',&nbsp;base=0)<br>
4</tt></dl>

<dl><dt><strong>nth</strong> = None</dl>

<dl><dt><strong>root</strong> = None</dl>

<dl><dt><strong>rshift_factor</strong> = 1</dl>

<hr>
Methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="PrimeFieldElement-__add__"><strong>__add__</strong></a>(self, other)</dt><dd><tt>Addition.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__bool__"><strong>__bool__</strong></a>(self)</dt><dd><tt>Truth&nbsp;value&nbsp;testing.<br>
&nbsp;<br>
Return&nbsp;False&nbsp;if&nbsp;this&nbsp;field&nbsp;element&nbsp;is&nbsp;zero,&nbsp;True&nbsp;otherwise.<br>
Field&nbsp;elements&nbsp;can&nbsp;thus&nbsp;be&nbsp;used&nbsp;directly&nbsp;in&nbsp;Boolean&nbsp;formulas.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__iadd__"><strong>__iadd__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;addition.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__ilshift__"><strong>__ilshift__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__imul__"><strong>__imul__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;multiplication.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__init__"><strong>__init__</strong></a>(self, value)</dt><dd><tt>Initialize&nbsp;self.&nbsp;&nbsp;See&nbsp;help(type(self))&nbsp;for&nbsp;accurate&nbsp;signature.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__isub__"><strong>__isub__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;subtraction.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__itruediv__"><strong>__itruediv__</strong></a>(self, other)</dt><dd><tt>In-place&nbsp;division.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__lshift__"><strong>__lshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__mul__"><strong>__mul__</strong></a>(self, other)</dt><dd><tt>Multiplication.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__neg__"><strong>__neg__</strong></a>(self)</dt><dd><tt>Negation.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__pos__"><strong>__pos__</strong></a>(self)</dt><dd><tt>Unary&nbsp;+.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__radd__"><strong>__radd__</strong></a>(self, other)</dt><dd><tt>Addition&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__rlshift__"><strong>__rlshift__</strong></a>(self, other)</dt><dd><tt>Left&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__rmul__"><strong>__rmul__</strong></a>(self, other)</dt><dd><tt>Multiplication&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__rrshift__"><strong>__rrshift__</strong></a>(self, other)</dt><dd><tt>Right&nbsp;shift&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__rsub__"><strong>__rsub__</strong></a>(self, other)</dt><dd><tt>Subtraction&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__rtruediv__"><strong>__rtruediv__</strong></a>(self, other)</dt><dd><tt>Division&nbsp;(with&nbsp;reflected&nbsp;arguments).</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__sub__"><strong>__sub__</strong></a>(self, other)</dt><dd><tt>Subtraction.</tt></dd></dl>

<dl><dt><a name="PrimeFieldElement-__truediv__"><strong>__truediv__</strong></a>(self, other)</dt><dd><tt>Division.</tt></dd></dl>

<hr>
Class methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="PrimeFieldElement-to_bytes"><strong>to_bytes</strong></a>(x)<font color="#909090"><font face="helvetica, arial"> from <a href="https://docs.python.org/3/library/functions.html#type">builtins.type</a></font></font></dt><dd><tt>Return&nbsp;byte&nbsp;string&nbsp;representing&nbsp;the&nbsp;given&nbsp;list&nbsp;of&nbsp;integers&nbsp;x.</tt></dd></dl>

<hr>
Static methods inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><a name="PrimeFieldElement-from_bytes"><strong>from_bytes</strong></a>(data)</dt><dd><tt>Return&nbsp;the&nbsp;list&nbsp;of&nbsp;integers&nbsp;represented&nbsp;by&nbsp;the&nbsp;given&nbsp;byte&nbsp;string.</tt></dd></dl>

<hr>
Data descriptors inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><strong>value</strong></dt>
</dl>
<hr>
Data and other attributes inherited from <a href="mpyc.finfields.html#FiniteFieldElement">FiniteFieldElement</a>:<br>
<dl><dt><strong>byte_length</strong> = None</dl>

<dl><dt><strong>characteristic</strong> = None</dl>

<dl><dt><strong>ext_deg</strong> = None</dl>

<dl><dt><strong>frac_length</strong> = 0</dl>

<dl><dt><strong>modulus</strong> = None</dl>

<dl><dt><strong>order</strong> = None</dl>

</td></tr></table></td></tr></table><p>
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
<tr bgcolor="#eeaa77">
<td colspan=3 valign=bottom>&nbsp;<br>
<font color="#ffffff" face="helvetica, arial"><big><strong>Functions</strong></big></font></td></tr>
    
<tr><td bgcolor="#eeaa77"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
<td width="100%"><dl><dt><a name="-GF"><strong>GF</strong></a>(modulus, f=0)</dt><dd><tt>Create&nbsp;a&nbsp;finite&nbsp;(Galois)&nbsp;field&nbsp;for&nbsp;given&nbsp;modulus&nbsp;(prime&nbsp;number&nbsp;or&nbsp;irreducible&nbsp;polynomial).</tt></dd></dl>
 <dl><dt><a name="-find_irreducible"><strong>find_irreducible</strong></a>(p, d)</dt><dd><tt>Find&nbsp;smallest&nbsp;irreducible&nbsp;polynomial&nbsp;of&nbsp;degree&nbsp;d&nbsp;over&nbsp;<a href="#-GF">GF</a>(p).</tt></dd></dl>
 <dl><dt><a name="-find_prime_root"><strong>find_prime_root</strong></a>(l, blum=True, n=1)</dt><dd><tt>Find&nbsp;smallest&nbsp;prime&nbsp;of&nbsp;bit&nbsp;length&nbsp;at&nbsp;least&nbsp;l&nbsp;satisfying&nbsp;given&nbsp;constraints.<br>
&nbsp;<br>
Default&nbsp;is&nbsp;to&nbsp;return&nbsp;Blum&nbsp;primes&nbsp;(primes&nbsp;p&nbsp;with&nbsp;p&nbsp;%&nbsp;4&nbsp;==&nbsp;3).<br>
Also,&nbsp;a&nbsp;primitive&nbsp;root&nbsp;w&nbsp;is&nbsp;returned&nbsp;of&nbsp;prime&nbsp;order&nbsp;at&nbsp;least&nbsp;n.</tt></dd></dl>
 <dl><dt><a name="-pGF"><strong>pGF</strong></a>(modulus, f=0)</dt><dd><tt>Create&nbsp;a&nbsp;finite&nbsp;field&nbsp;for&nbsp;given&nbsp;prime&nbsp;modulus.</tt></dd></dl>
 <dl><dt><a name="-xGF"><strong>xGF</strong></a>(p, modulus)</dt><dd><tt>Create&nbsp;a&nbsp;finite&nbsp;field&nbsp;for&nbsp;given&nbsp;irreducible&nbsp;polynomial.</tt></dd></dl>
</td></tr></table>
</body></html>